//
//  LocalWakeupConfig.h
//  AiEngine2
//
//  Created by hobson on 13-6-25.
//  Copyright (c) 2013年 Midfar Sun. All rights reserved.
//
/**
 * 本地唤醒引擎配置类<br>
 * <p/>
 * 配置参数说明
 * <ul>
 * <li>设置主目录 {@link #setResDir:(NSString*)dir}</li>
 * <li>设置网络资源 {@link #setNetBinFile:(NSString*)netBinFile}</li>
 * <li>设置声学资源 {@link #setResBinFile:(NSString*)resBinFile}</li>
 * <li>设置唤醒模式wakeupRetMode:
 * <li>{@link #WAKE_UP_RET_MODE_1}: 检测到唤醒词立即返回</li>
 * <li>{@link #WAKE_UP_RET_MODE_2}: 检测到唤醒词后在vad结束时返回</li>
 * </ul>
 */

#import <Foundation/Foundation.h>
#import "AiCommonConfig.h"

@interface LocalWakeupConfig : AiCommonConfig

enum {
    WAKE_UP_RET_MODE_1 = 1 ,// 检测到唤醒词立即返回
    WAKE_UP_RET_MODE_2 = 2 ,//检测到唤醒词后在vad结束时返回
} ;

enum {
    NOT_USE_WAV_CACHE = 0 ,//不缓存音频
    USE_WAV_CACHE = 1 ,//缓存音频
} ;

/**
 *	@brief	设置主目录
 *
 *	@param 	dir 	主目录路径
 *
 *	@return 返回函数执行状态码（0为成功）
 */
- (OSStatus)setResDir:(NSString*)dir;

/**
 *	@brief	设置唤醒模式
 *
 *	@param 	wakeupRetMode 	WAKE_UP_RET_MODE_1:检测到唤醒词立即返回; WAKE_UP_RET_MODE_2:检测到唤醒词后在vad结束时返回
 *
 *	@return	返回函数执行状态码（0为成功）
 */
- (OSStatus)setWakeupRetMode:(NSNumber*)wakeupRetMode;

/**
 *	@brief	设置音频缓存
 *
 *	@param 	useWavCache 	NOT_USE_WAV_CACHE:不缓存音频; USE_WAV_CACHE:缓存音频
 *
 *	@return	返回函数执行状态码（0为成功）
 */
- (OSStatus)setUseWavCache:(NSNumber*)useWavCache;

/**
 *	@brief	设置解码网络文件名
 *
 *	@param 	netBinFile 	解码网络文件名，相对于资源目录路径
 *
 *	@return 返回函数执行状态码（0为成功）
 */
- (OSStatus)setNetBinFile:(NSString*)netBinFile;

/**
 *	@brief	设置资源文件名
 *
 *	@param 	resBinFile 	资源文件名，相对于资源目录路径
 *
 *	@return	返回函数执行状态码（0为成功）
 */
- (OSStatus)setResBinFile:(NSString*)resBinFile;


@end

